#coding=utf-8

import ts_file_pro as tfp
import xml_file_pro as xp
import re

# 输入文件：中英文对照表 excel
xls_fp = './src/ts.xlsx'
# 输入文件：ts文件 xml格式
src_ts_fp = './src/tmaps_zh_CN.ts'
# 输出文件：带翻译文本 excel
xls_need2ts_fp = "./dst/need2ts.xls"
# 输出文件：翻译后的ts文件
dst_ts_fp = './dst/tmaps_zh_CN.ts'

##########################################################################
# 解析excel文件获取中英文翻译信息
ts_info = tfp.read_ts_content(xls_fp)

# 解析xml文件（.ts），并将译文写入
lst_no_trans_all = xp.translate(src_ts_fp, ts_info, dst_ts_fp)
print("{0} translate to {1}".format(src_ts_fp, dst_ts_fp))

# 过滤待翻译的文本，删除不包含英文的文本
lst_no_trans = []
pattern = re.compile(r'[\u4e00-\u9fa5]+')
for str in lst_no_trans_all:
    result = pattern.findall(str)
    if len(result) > 0:
        lst_no_trans.append(str.strip())

# 将待翻译的文本写入excel文件
if len(lst_no_trans)>0:
    tfp.write_need2ts(lst_no_trans, xls_need2ts_fp)
    print("write the words need to translate into file: ", xls_need2ts_fp)